home *** CD-ROM | disk | FTP | other *** search
/ Aminet 22 / Aminet 22 (1997)(GTI - Schatztruhe)[!][Dec 1997].iso / Aminet / mus / misc / MusicIn.lha / musicin / Asmfuncs.a next >
Text File  |  1997-09-23  |  1KB  |  36 lines

  1. ;--------------------------------------------------------------------------------------------
  2. ;--------                some routines from encoder rewritten in asm                  -------
  3. ;--           ©1997 Henryk "Buggs" Richter, tfa652@cks1.rz.uni-rostock.de                  --
  4. ;-- date: 18.09.97                                                                         --
  5. ;--------------------------------------------------------------------------------------------
  6. ;
  7.                 section    grummel,code
  8.  
  9.                   XDEF     @ASM_FastReplace
  10.                   XDEF     _ASM_FastReplace        ; for SAS-C 6.5
  11.  
  12. ;-------------------------------------------------------------------------------------------
  13. ;          get 32 Samples from Buffer, convert to Double and Scale by 1/32768
  14. ;
  15. ;Inputs: a0: double *xk
  16. ;        a1: short *buffer
  17. ;        d0: n
  18. ;
  19. _ASM_FastReplace
  20. @ASM_FastReplace
  21.         subq.w    #1,d0
  22.         fmove.d    #0.00003051757,fp1        ;1/32768
  23. ;        fmove.d    #32768,fp1
  24. Loop
  25.         move.w    (a1)+,d1
  26.         ext.l    d1
  27.         fmove.l    d1,fp0
  28. ;        fdiv.x    fp1,fp0
  29.         fmul.x    fp1,fp0
  30.         fmove.d    fp0,(a0)
  31.         subq.l    #8,a0
  32.         dbf        d0,Loop
  33.         rts
  34.  
  35.         END
  36.